home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 501-525 / disk_503 / nofraglib / nofrag.h < prev    next >
C/C++ Source or Header  |  1992-05-06  |  2KB  |  93 lines

  1. #ifndef LIBRARIES_NOFRAG_H
  2. #define LIBRARIES_NOFRAG_H 1
  3.  
  4. /*-- AutoRev header do NOT edit!
  5. *
  6. *   Program         :   nofrag.h
  7. *   Copyright       :   © 1991 Jaba Development
  8. *   Author          :   Jan van den Baard
  9. *   Creation Date   :   06-Apr-91
  10. *   Current version :   2.1
  11. *   Translator      :   Several
  12. *
  13. *   REVISION HISTORY
  14. *
  15. *   Date          Version         Comment
  16. *   ---------     -------         ------------------------------------------
  17. *   19-May-91     2.1             Added 'Vec' routines.
  18. *   06-Apr-91     1.1             Initial version!
  19. *
  20. *-- REV_END --*/
  21.  
  22. #ifndef EXEC_TYPES_H
  23. #include <exec/types.h>
  24. #endif
  25.  
  26. #ifndef EXEC_MEMORY_H
  27. #include <exec/memory.h>
  28. #endif
  29.  
  30. #ifndef EXEC_LISTS_H
  31. #include <exec/lists.h>
  32. #endif
  33.  
  34. #ifndef EXEC_LIBRARIES_H
  35. #include <exec/libraries.h>
  36. #endif
  37.  
  38. struct NoFragBase
  39. {
  40.     struct  Library     LibNode;
  41. };
  42.  
  43. #define NOFRAG_VERSION  2
  44. #define NOFRAG_REVISION 1
  45.  
  46. /*
  47.  * ALL structures following are PRIVATE! DO NOT USE THEM!
  48.  */
  49. struct MemoryBlock
  50. {
  51.     struct MemoryBlock *Next;
  52.     struct MemoryBlock *Previous;
  53.     ULONG               Requirements;
  54.     ULONG               BytesUsed;
  55. };
  56.  
  57. struct MemoryItem
  58. {
  59.     struct MemoryItem  *Next;
  60.     struct MemoryItem  *Previous;
  61.     struct MemoryBlock *Block;
  62.     ULONG               Size;
  63. };
  64.  
  65. struct BlockList
  66. {
  67.     struct MemoryBlock *First;
  68.     struct MemoryBlock *End;
  69.     struct MemoryBlock *Last;
  70. };
  71.  
  72. struct ItemList
  73. {
  74.     struct MemoryItem  *First;
  75.     struct MemoryItem  *End;
  76.     struct MemoryItem  *Last;
  77. };
  78.  
  79. /*
  80.  * This structure may only be used to pass on to the library routines!
  81.  * It may ONLY be obtained by a call to "GetMemoryChain()"
  82.  */
  83. struct MemoryChain
  84. {
  85.     struct BlockList    Blocks;
  86.     struct ItemList     Items;
  87.     ULONG               BlockSize;
  88. };
  89.  
  90. #define MINALLOC        sizeof(struct MemoryItem)
  91.  
  92. #endif
  93.